package com.lihua.phonecode.service;

import org.springframework.stereotype.Service;

/**
 * 获取四位数验证码
 * @author 15594
 */

public interface PhoneCodeService {
    /**
     *
     * 返回一个四位的随机数，充当手机号验证码
     * @return 字符串类型的验证码
     * */
    String getRandomCode();

    /**
     * 将验证码发送到指定手机
     * @return 是否发送验证码成功
     * @param code 验证码
     * @param phone 手机号
     * */
    boolean sendCode(String code,String phone);

    /**
     * 判断验证码否过期和是否匹配，通过redis String数据类型判断，key为手机号，value为code
     * @return 返回是否过期，过期为0,错误为-1，成功为1
     * @param phone  用户手机号，通过手机号标识过期时间
     * @param code  验证码
     * */
    int isPhoneCode(String code, String phone);


    /**
     * 失败5次锁定一天
     * @return 返回锁定剩余时间，或者剩余失败次数
     * @param phone 手机号
     * */
    String lockPhone(String phone);
}
